Fix EDE security flaw involving loading arbitrary Lisp from Project.ede.
authorEric Ludlam <zappo@gnu.org>
Fri, 13 Jan 2012 13:19:25 +0000 (21:19 +0800)
committerChong Yidong <cyd@gnu.org>
Fri, 13 Jan 2012 13:19:25 +0000 (21:19 +0800)
commit91e2960ba11c4c56c51d2ee4c9af4bb4e7aad31c
treefc7078a7fcf058bbe0a2f2ca5b7ef8f1c40c7955
parent99d11cab7998930c980d1dd4dc253692221c27fe
parent8356029774c96556dd3122642548a7f57f63826d
Fix EDE security flaw involving loading arbitrary Lisp from Project.ede.

* lisp/ede.el (ede-project-directories): New option.
(ede-directory-safe-p): Check it.
(ede-initialize-state-current-buffer, ede, ede-new)
(ede-check-project-directory, ede-rescan-toplevel)
(ede-load-project-file, ede-parent-project, ede-current-project):
(ede-target-parent): Avoid loading in a project unless it is safe,
since it may involve malicious code.  This security flaw was
pointed out by Hiroshi Oota.

* lisp/ede/auto.el (ede-project-autoload): Add safe-p slot.
(ede-project-class-files): Projects using Project.ede are unsafe.
(ede-auto-load-project): New method.

* lisp/ede/simple.el (ede-project-class-files): Mark as unsafe.
lisp/cedet/ChangeLog
lisp/cedet/ede.el
lisp/cedet/ede/auto.el
lisp/cedet/ede/simple.el